﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using AccesoDatos.Manejador;
using AccesoDatos.Objetos;

namespace Autorizacion_facturas_caja.Vacaciones
{
    public partial class frmVacaciones_Busqueda_Años_Cumplir : Form
    {
        objRH obj = new objRH();
        objVacaciones obj1 = new objVacaciones();
        Manejador_Vacaciones MV = new Manejador_Vacaciones();
        Manejador_Empleado_Captura Mane = new Manejador_Empleado_Captura();

        #region FUNCIONES
        //obtiene balores para combo box y coloca tips en botones
        public frmVacaciones_Busqueda_Años_Cumplir()
        {
            InitializeComponent();
            ObtieneDatosCombo();
            toolTip1.SetToolTip(btnBuscar, "BUSCAR");
            toolTip1.SetToolTip(btnRegresar, "REGRESAR");
        }
        //Obtiene los datos de la tabla cat_sucursales al combo de sucursales
        private void ObtieneDatosCombo()
        {
            cmbSucursal.DataSource = Mane.ObtieneSucursales();
            cmbSucursal.ValueMember = "SucId";
            cmbSucursal.DisplayMember = "Nombre";
        }
        //realiza la busqueda 
        private void buscar()
        {
            if ((rBAntes.Checked == true || rBDespues.Checked == true) && cmbDias.Text.Trim() != "")
            {
                obj.Buscar = txtBuscar.Text.Trim();
                obj.SucId = cmbSucursal.SelectedValue.ToString();
                obj1.Dias = Convert.ToInt16(cmbDias.Text.Trim());
                if (rBAntes.Checked == true) { obj1.Tipo = rBAntes.Text; }
                else if (rBDespues.Checked == true) { obj1.Tipo = rBDespues.Text; }
                dataGridView1.DataSource = MV.Lista_Años_Cumplir(obj.Buscar, obj.SucId, obj1.Dias, obj1.Tipo);
                propiedadesColumnas();
            }
            else { MessageBox.Show("SELECCIONE TODOS LOS ATRIBUTOS NECESARIOS", "ALERTA"); }
        }
        //propiedades de las columnas del datagrid
        private void propiedadesColumnas()
        {
            this.dataGridView1.RowHeadersVisible = false;

            this.dataGridView1.Columns["id_empleado"].Visible = false;
            this.dataGridView1.Columns["razon_social"].HeaderText = "RAZON SOCIAL";
            this.dataGridView1.Columns["fecha_ingreso"].HeaderText = "FECHA INGRESO";
            this.dataGridView1.Columns["fecha_ingreso"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dataGridView1.Columns["ENVIADO"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dataGridView1.Columns["fecha_ingreso"].DefaultCellStyle.Format = "dd/MM/yyyy";
            this.dataGridView1.Columns["razon_social"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;

            this.dataGridView1.Columns["ENVIADO"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dataGridView1.Columns["razon_social"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dataGridView1.Columns["fecha_ingreso"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
        }
        //Guarda los valores en los objetos y despliega la forma para enviar correos
        private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.ColumnIndex != 0 && e.RowIndex >= 0)
            {
                obj.Id_Empleado = Convert.ToInt32(dataGridView1[0, e.RowIndex].Value);
                if (rBAntes.Checked == true) { obj1.Id_Correo_Vacaciones = 1; }
                else if (rBDespues.Checked == true) { obj1.Id_Correo_Vacaciones = 2; ; }

                frmVacaciones_Correo fvc = new frmVacaciones_Correo(obj, obj1);
                fvc.ShowDialog();

                obj.Buscar = txtBuscar.Text.Trim();
                obj.SucId = cmbSucursal.SelectedValue.ToString();
                obj1.Dias = Convert.ToInt16(cmbDias.Text.Trim());
                if (rBAntes.Checked == true) { obj1.Tipo = rBAntes.Text; }
                else if (rBDespues.Checked == true) { obj1.Tipo = rBDespues.Text; }

                dataGridView1.DataSource = MV.Lista_Años_Cumplir(obj.Buscar, obj.SucId, obj1.Dias, obj1.Tipo);
                propiedadesColumnas();
            }
        }
        #endregion

        #region BOTONES
        //llama al metodo buscar
        private void btnBuscar_Click(object sender, EventArgs e)
        {
            buscar();
        }
        //cierra la forma
        private void btnRegresar_Click(object sender, EventArgs e)
        {
            Close();
        }
        #endregion

        #region  EVENTOS
        //llama al metodo buscar
        private void txtBuscar_TextChanged(object sender, EventArgs e)
        {
            buscar();
        }
        #endregion
       
    }
}
